package Z006ClassAndObject.CO0013MeiJu;

public class MeiJu {

    //枚举enum是一种特殊的类(还是类)，使用枚举可以很方便的定义常量
    //比如设计一个枚举类型 季节，里面有4种常量

}


class MeiJuDemo{
    public static void main(String[] args){
        Season season = Season.SPRING;
        switch (season){
            case SPRING:
                System.out.println("春天");
                break;
            case SUMMER:
                System.out.println("夏天");
                break;
            case AUTUMN:
                System.out.println("秋天");
                break;
            case WINTER:
                System.out.println("冬天");
                break;
        /**
         * 假设在使用switch的时候，不是使用枚举，
         * 而是使用int，而int的取值范围就不只是1-4，
         * 有可能取一个超出1-4之间的值，这样判断结果就似是而非了。（因为只有4个季节）
         * 但是使用枚举，就能把范围死死的限定在这四个当中
         * SPRING,SUMMER,AUTUMN,WINTER
         */
        }
    }
}

class MeiJuDemo2{
    public static void main(String[] args) {
        int season = 5;
        switch (season){
            case 1:
                System.out.println("春天");
                break;
            case 2:
                System.out.println("夏天");
                break;
            case 3:
                System.out.println("秋天");
                break;
            case 4:
                System.out.println("冬天");
                break;
        }

        for(Season s : Season.values()){
            System.out.println(s);
        }

    }
}
//  练习： 英雄联盟中有这么一些分类

//  TANK (坦克)
//  WIZARD (法师 )
//  ASSASSIN (刺客)
//  ASSIST (辅助)
//  WARRIOR (近战)
//  R0ANGED (远程 )
//  PUSH (推进)
//  FARMING (打野)
//  设计一个枚举类型HeroType,使用上述分类作为常量

//  再编写一段switch语句，把每种枚举常量输出为中文字符串